package com.huilian.cloud.module.system.controller.admin.dept.vo.post;

import com.huilian.cloud.framework.common.enums.CommonStatusEnum;
import com.huilian.cloud.framework.common.validation.InEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

@Schema(description = "管理后台 - 岗位创建/修改 Request VO")
@Data
public class PostSaveReqVO {

    @Schema(description = "职位ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1181")
    private Long postId;

    @Schema(description = "职位编码", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "职位编码不能为空")
    private String postCode;

    @Schema(description = "职位名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
    @NotEmpty(message = "职位名称不能为空")
    private String postName;

    @Schema(description = "显示顺序", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "显示顺序不能为空")
    private Integer postSort;

    @Schema(description = "状态（0正常 1停用）", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotEmpty(message = "状态（0正常 1停用）不能为空")
    private String status;

    @Schema(description = "创建者")
    private String createBy;

    @Schema(description = "更新者")
    private String updateBy;

    @Schema(description = "备注", example = "你猜")
    private String remark;

    @Schema(description = "创建人id", example = "9707")
    private Integer createUserId;

    @Schema(description = "更新人id", example = "8985")
    private Integer updateUserId;

    @Schema(description = "项目id", requiredMode = Schema.RequiredMode.REQUIRED, example = "9044")
    private Integer projectId;

    @Schema(description = "删除标志（0未删除 1已删除）")
    private String delFlag;

    @Schema(description = "职位等级")
    private Integer postLevel;

}